// bzoj1113
// 题意：给定按序排列的n个矩形，现在可以用任意的矩形海报去覆盖它，
//       不能覆盖到空的地方。问最少几块海报。
//
// 题解：一开始想复杂，想成建一棵树然后统计个数。其实错是没错，只需要
//       用单调队列搞就行，遇到一个相同的就减1.
//
// 统计：1496ms, 5min, 1a
//
// run: $exec < input
#include <cstdio>

int const maxn = 250100;
int queue[4 * maxn];
int head, tail, n;

int main()
{
	std::scanf("%d", &n);
	head = 1; tail = 0;
	int ans = n;
	for (int i = 0, x, y; i < n; i++) {
		std::scanf("%d %d", &x, &y);
		for (; head <= tail && y <= queue[tail]; tail--)
			if (y == queue[tail]) ans--;
		queue[++tail] = y;
	}
	std::printf("%d\n", ans);
}

